xenoprof: Handle 32-bit guest stacks properly in a 64-bit hypervisor
authorGeorge Dunlap <george.dunlap@eu.citrix.com>
Mon, 23 Jan 2012 09:36:29 +0000 (09:36 +0000)
committerGeorge Dunlap <george.dunlap@eu.citrix.com>
Mon, 23 Jan 2012 09:36:29 +0000 (09:36 +0000)
commita2bef2635bb7e4295692ad4c87e199be84d11e56
tree19351f2e771bb442ba991a538874a9cb1ec72f64
parentfb55c1dd70c077075644a3d6a8d362e221659c23
xenoprof: Handle 32-bit guest stacks properly in a 64-bit hypervisor

The dump_guest_backtrace() function attempted to walk the stack
based on the assumption that the guest and hypervisor pointer sizes
were the same; thus any 32-bit guest running under 64-bit hypervisor
would have unreliable results.

In 64-bit mode, read the 32-bit stack frame properly.

Signed-off-by: Marcus Granado <marcus.granado@eu.citrix.com>
Signed-off-by: George Dunlap <george.dunlap@eu.citrix.com>
Committed-by: Keir Fraser <keir@xen.org>
xen/arch/x86/oprofile/backtrace.c